package 剑指offer;

/**
 * @author zhangmin
 * @create 2021-11-15 11:11
 *
 * 字符串
 */
public class day3_05_58 {

    /**===========================================================================================================================
     * 剑指 Offer 05. 替换空格
     * 请实现一个函数，把字符串 s 中的每个空格替换成"%20"。
     * 1.直接替换
     * 2.转换成字符数组进行挨个替换
     * */
    public String replaceSpace1(String s) {
        return s.replace(" ","%20");
    }
    public String replaceSpace(String s) {
        String[] res=new String[s.length()];
        String ss="";
        for (int i = 0; i < s.length(); i++) {
            char sc=s.charAt(i);
            if (sc==' '){
                res[i]="%20";
            }else {
                res[i]=Character.toString(sc);
            }
            ss+=res[i];
        }
        return ss;
    }

    /**===========================================================================================================================
     * 剑指 Offer 58 - II. 左旋转字符串
     * 字符串的左旋转操作是把字符串前面的若干个字符转移到字符串的尾部。请定义一个函数实现字符串左旋转操作的功能。
     * 比如，输入字符串"abcdefg"和数字2，该函数将返回左旋转两位得到的结果"cdefgab"。
     * */
    public String reverseLeftWords1(String s, int n) {
        int len=s.length();
        if (len<n) return s;
        String s1 = s.substring(0, n);
        String s2=s+s1;
        return s2.substring(n);
    }
    public String reverseLeftWords(String s, int n) {
        return s.substring(n)+s.substring(0,n);
    }
}
